package com.slz3.business.module.configManagement.conZoneType.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.slz3.business.frame.enums.AuditFlag;
import com.slz3.business.frame.enums.YNFlag;
import com.slz3.business.module.configManagement.conZoneType.enums.ConZoneTypePositionEnum;
import lombok.Data;

import javax.persistence.Enumerated;
import java.time.LocalDateTime;
import java.util.List;
import java.util.UUID;

import static javax.persistence.EnumType.STRING;

@Data
public class ConZoneTypeCondition extends ConZoneType {

    public static final String CREATE_TIME_OF_PATTERN = "yyyy-MM-dd HH:mm";

    private List<UUID> uuidList;

    private List<AuditFlag> serAuditList;

    private List<UUID> fkUpperZoneList;

    private List<UUID> fkZoneTemplateList;

    private List<ConZoneTypePositionEnum> enuPositionList;

    @JsonFormat(timezone = "GMT+8", pattern = CREATE_TIME_OF_PATTERN)
    private LocalDateTime createTimeOUTSET;

    @JsonFormat(timezone = "GMT+8", pattern = CREATE_TIME_OF_PATTERN)
    private LocalDateTime createTimeFINISH;

    @JsonFormat(timezone = "GMT+8", pattern = CREATE_TIME_OF_PATTERN)
    private LocalDateTime lastModifyTimeOUTSET;

    @JsonFormat(timezone = "GMT+8", pattern = CREATE_TIME_OF_PATTERN)
    private LocalDateTime lastModifyTimeFINISH;

    @Enumerated(STRING)
    private YNFlag fkUpperZoneIsNull = YNFlag.YES;

}
